package com.iss.apartmentmanage.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.iss.apartmentmanage.entity.UserInfo;
import com.iss.apartmentmanage.model.BaseModel;
import com.iss.apartmentmanage.model.UserWithUserInfo;

public interface UserInfoService {
    //查询所有员工的信息
    IPage<UserInfo> selectAllUserInfoMessage(int pageNum, int pageSize, BaseModel baseModel);

    //插入员工的信息
    Integer insertUserInfo(UserInfo userInfo);

    //更新员工的信息
    Integer updateUserInfoById(UserInfo userInfoId);

    //单行启用禁用
    Integer updateIsUseByUserinfoId(UserInfo userInfo);
    //批量启用和禁用员工的信息
    Integer updateIsUsedByUinfoIds(String [] arr,int isUser);
    //删除
    Integer deleteUserInfoById(Integer id);
    //批量删除
    Integer deleteUserInfoByBatchIds(String[] ids);
    /**
     * 先根据用户名 查询userinfo整条信息
     * @param username
     * @return
     */
    UserWithUserInfo getUserinfoByUsername(String username);

    /**
     * 根据用户ID查询用户的账号密码
     * @param userinfoId
     * @return
     */
    UserWithUserInfo getUserInfoUnameAndUpwdByUid(UserWithUserInfo userinfoId);


    Integer updateUserInfoIdByUser(UserInfo userInfoId);
}
